package com.github.baichuan.iot.protocol.utils;

import com.github.baichuan.iot.protocol.codec.MessageException;
import io.netty.buffer.ByteBuf;

import java.util.List;

/**
 * 协议消息语法解析器
 */
public interface SyntaxParser {
    /**
     * 解析报文
     */
    List<SyntaxUnit> parse(ByteBuf buf) throws MessageException;

    /**
     * 获取当前语法单元的名称
     * @return
     */
    String name();
}
